package com.rownext.kernel.logging 
{

	/**
	 * 本类定义所有日志级别的常量
	 * @author Wang Kang
	 */	
	public class LogLevel 
	{
		/**
		 * 关闭所有级别logging
		 */
		public static const OFF:LogLevel = new LogLevel(7, "OFF");
		/**
		 * 此日志级别表示可能导致程序崩溃的严重错误
		 */
		public static const FATAL:LogLevel = new LogLevel(6, "FATAL");
		/**
		 * 此日志级别表示系统出现错误，但程序还能继续运行
		 */
		public static const ERROR:LogLevel = new LogLevel(5, "ERROR");
		/**
		 * 此日志级别对有可能产生问题的代码的地方给出警告
		 */
		public static const WARN:LogLevel = new LogLevel(4, "WARN");
		/**
		 * 此日志级别表示输出一般性的提示信息
		 */
		public static const INFO:LogLevel = new LogLevel(3, "INFO");
		/**
		 * 此日志级别表示输出程序调试期间的信息
		 */
		public static const DEBUG:LogLevel = new LogLevel(2, "DEBUG");
		/**
		 * 此日志级别输出跟踪信息，最低的日志级别
		 */
		public static const TRACE:LogLevel = new LogLevel(1, "TRACE");

		/**
		 * @private
		 */
		public function LogLevel(value:uint, name:String)
		{
			_value = value;
			_string = name;
		}

		private var _value:uint;
		private var _string:String;

		/**
		 * 返回表示当前日志级别对象的整数
		 */
		public function get value():uint
		{
			return _value;
		}

		/**
		 * 返回表示当前日志级别对象的字符串
		 */
		public function get string():String
		{
			return _string;
		}
	}
}